/**
 * 图片URL处理工具
 */
export const useImageUrl = () => {
  const config = useRuntimeConfig()
  
  /**
   * 获取完整的图片URL
   * @param url 图片路径（可能是相对路径或完整URL）
   * @returns 完整的图片URL
   */
  const getImageUrl = (url: string | undefined | null): string => {
    // 空值处理
    if (!url) return ''
    
    // 如果已经是完整的HTTP(S)地址，直接返回
    if (url.startsWith('http://') || url.startsWith('https://')) {
      return url
    }
    
    // 获取API基础URL
    const apiBase = config.public.apiBase
    
    // 如果是相对路径（以/开头），拼接API地址
    if (url.startsWith('/')) {
      // 如果 apiBase 是 /api，需要去掉 /api 只保留域名部分
      if (apiBase === '/api' || apiBase === '/api/') {
        // SSR或同域名情况，直接返回相对路径
        return url
      } else {
        // 有完整的API地址，拼接（注意去掉 /api 后缀）
        const baseUrl = apiBase.replace(/\/api\/?$/, '')
        return `${baseUrl}${url}`
      }
    }
    
    // 其他情况直接返回
    return url
  }
  
  return {
    getImageUrl
  }
}

